Communication console with component aggregation

ABSTRACT

Systems methods and devices are provided for a presentation including a communications console with component aggregation. In one potential implementation, a computing device with an application framework receives a communication manager object via a network connectivity device and executes the communication manager object within the application framework. The computing device may then receive and execute communications components and a presentation components within the application framework using the communication manager object. The communication manager object may then manages interface and display of the presentation information via the application framework, as modified by communication components.

PRIORITY CLAIMS/RELATED APPLICATIONS

This application is a continuation of and claims priority under 35 USC120 to U.S. patent application Ser. No. 14/850,556, filed Sep. 10, 2015and entitled “Communication Console With Component Aggregation” that inturn in a continuation of and claims priority under 35 USC 120 to U.S.patent application Ser. No. 14/257,914, filed on Apr. 21, 2014 andtitled “Communication console with component aggregation” that is inturn a continuation of and claims priority under 35 USC 120 to U.S.patent application Ser. No. 12/755,849, filed on Apr. 7, 2010, now U.S.Pat. No. 8,706,812 and entitled “Communication Console With ComponentAggregation”, the entirety of which are incorporated herein byreference.

FIELD OF THE INVENTION

The present invention relates to online communications applications.

BACKGROUND OF THE INVENTION

Currently, numerous structures exist for direct online communications.The current solutions for providing interactivity and user control,however, are limited in the amount of user control that they provide foran audience member. These online communications applications limitflexibility, integration, and user selections in a variety of ways inorder to streamline and limit the size and complexity of theapplication.

For example, current direct online applications limit flexibility byrestricting the amount of customization that can be achieved within anindividual communications component. None of the existing direct onlineplatforms use a completely separate, encapsulated architecture forimplementing communications component customization per webcast, andnone of them allow an audience member to set up and view a webcast pertheir own interests. They also limit integration by restricting theamount of interactivity provided to a highly-customized communications.For example, existing webcasting platforms do not have an open platformfor integrating third-party communications components of any significantsize or complexity. The integration of third-party communicationscomponents in communication applications are limited in directcommunications to simple image or animation components. Attempts toexpand flexibility in current solutions involve creation of a collectionof closed “widgets” which become the non-expandable limitations of theapplication.

Downloaded executable installed applications do exist currently that usea component model, but the requirement to download, execute, and installa desktop executable application in a client computer make the currentuse of these indirect executable applications less secure and morecumbersome from an initial use perspective. None of the existingapplications function in a context that is fully-online, without adownloaded desktop application.

SUMMARY

In one potential implementation, flexibility of the application isincreased by using completely separate, encapsulated architecture forimplementing communications component customization per webcast, andnone of them allow an audience member to set up and view a webcast pertheir own interests.

In another potential implementation, integration is increased by usingan open platform for integrating third-party communications componentsof any significant size or complexity.

Another potential implementation targets each communications componentin the direct application as being a fully self contained piece of thewhole system, relying on the platform to provide common services, butable to function independently if needed. So not only is the servicelayer accessible to communications components, but also the look andfeel of the communications components themselves is inherited from theparent platform, without the need for an unsafe executed application.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an application interface according to one aspect of theinnovations herein.

FIG. 2 is an illustration of a communication system according to oneaspect of the innovations herein.

FIG. 3a is an illustration of one aspect of a rich internet applicationcomponent according to one aspect of the innovations herein.

FIG. 3b is an illustration of one aspect of a rich internet applicationcomponent according to one aspect of the innovations herein.

FIG. 3c is an illustration of one aspect of a rich internet applicationcomponent according to one aspect of the innovations herein.

FIG. 3d is an illustration of one aspect of a rich internet applicationcomponent according to one aspect of the innovations herein.

FIG. 3e is an illustration of a rich internet application componentaccording to one aspect of the innovations herein.

FIG. 4 is an illustration of a communication system according to oneaspect of the innovations herein.

FIG. 5 is a diagram of a database for use with a communication consolesystem according to one aspect of the innovations herein.

FIG. 6 is a diagram of a communication console system according to oneaspect of the innovations herein.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Reference will now be made in detail to the present innovations,examples of which are illustrated in the accompanying drawings. Theimplementations set forth in the following description do not representall implementations consistent with the claimed present innovations.Instead, they are merely some examples consistent with certain aspectsrelated to the present innovations. Wherever possible, the samereference numbers will be used throughout the drawings to refer to thesame or like parts.

The present innovations are relevant in the field of onlinecommunications applications. Although one embodiment may use live audioand video presentations that have a great deal of interactivity and usercontrol, a live or on-demand stream is not a necessary communicationscomponent. Embodiments of the innovations herein may function with orwithout an audio or video stream depending on the specificimplementation. Certain embodiments of the present innovations may be acollection of other pieces of functionality, or communicationscomponents that interact and collaborate with each other using a commonunderlying open platform. Again, this may occur with or without liveaudio and video elements.

FIG. 1 shows a collection of communication components such as slidecommunications component 120, media communications component 130, andmenu ribbon component 150 which are aggregated into an event console100. Console 100 may include an unlimited number of components,additionally including components such as display background component140 and screen background 160. In at least one potential embodiment,event console 100 functions only within the internet browser 110 of acomputing system, such as Windows Internet Explorer™. The event consoleis created within the internet browser 110 using browser plugins inconjunction with a standardized plugin system such as Adobe Flash™ orMicrosoft Silverlight™ as an enabler. The plugins are not a requiredcomponent of this solution, since a fully-browser based version (basedon HTML5) is also implemented. This allows console 100 to function inmany standardized environments without the need to download and installa desktop application, with the console 100 functioning inside thebrowser 110, and components 120-150 functioning inside console 100.Additional details related to the structure and function ofcommunication components aggregated within console 100 will be describedbelow.

FIG. 2 shows a diagram of open console platform 200, including baseplatform 230. Base platform 230 includes data exchange 232, chat andmessaging 234, logging 236, window management 238, content management240, and event listening 242. Additional details related to baseplatform 230 are disclosed in U.S. patent application Ser. No.11/246,033 which is hereby incorporated by reference. Open consoleplatform 200 also includes programming interfaces 220, and in certainembodiments may include, rich internet application (RIA) components 204,flash applications 206, 3rd party components 208, a web applicationframework components HTML5 components, Silverlight Components, and thirdparty flash applications 210. As described above, some embodiments mayinclude only certain types of components or applications. Eachembodiment of the present innovations is not required to include all ofRIA components 204, flash applications 206, 3rd party components 208,HTML5 components, Silverlight Components, and third party flashapplications 210. Instead, certain embodiments may require only one,multiple, or all of the above applications and components.

Some embodiments of open platform 200 include or are presented inconjunction with a virtual show 202. Virtual show 202 may interface andprovide and receive information to and from some or all of thecomponents or applications operating with API 220. Details related tovirtual show 202 may be found in U.S. patent application Ser. No.12/131,849, which is hereby incorporated by reference. As discussedabove, open console platform may exist either with or without anassociated virtual show.

Programming interfaces 220 in conjunction with base platform 230provides a foundation for building out sophisticated, domain-specific,user-targeted communications components for delivering the customized,personalized, webcasting experience. By using an open interface, thebase platform 230 is made accessible to the widest possible audience,regardless of location, device used to view it, or language. The “open”nature of the platform 200 allows third parties to develop and deploycommunications, interactive, and informational components independently.This open platform 200 defines a level of programming interfacesavailable to webcasting communications components in the base platform230 such as: window/layer management such as z-index, listing andcontrolling layers, windows, sizing, positioning, transitions; dataproviders including particular location, role, resources available tothat role in the current location; logging including problems/errors,action/hit-tracking; and interaction with standard functionality such aslaunching a console like console 100 of FIG. 1, launching URL's,Briefcases survey components or components such as media component 130or slide component 120 of FIG. 1. The programming interface 220 may alsobe used to standardize interfaces, both of elements from base platform230 and components and applications created to use the programminginterfaces 220. This may be done to allow a unifying look-and-feel to beapplied by default to components developed by disparate sources andthird parties who may never interact with each other.

Live or On-Demand Rich Media Internet Applications require complexinteractivity between the various parts, or communications components,of the application. At the same time, new communications components orcustomization of existing communications components which may conflictin a closed system are possible, this requires communication componentsusing programming interface 220 to create new functionality and performits individual role without concerns of conflicts with othercommunications components. The communications components may also beintegrated into the final presentation in a way that masks theirindividual and different sources, and shows the appearance of a singleunified application despite the different development sources and/ortimes of various communication components.

The complex interaction within the various components is managed by acentral “Communications Manager” object, which registers events orrequests from individual components, identifies the priority of eachevent, and determines the callback mechanism to deliver information backto the calling component. This object then applies a layer of securityfilters to verify that the calling component has the appropriatepermissions to access the resources it is requesting, and that it hasnot exceeded its quota of requests within a given time frame. Once allthese filters are passed and the Communications Manager determines thatthe event or method being called can in fact be acted on—the event ormethod is allowed to proceed in a metered and organized way. Registeredevent listeners, or method calls return the information to the componentvia a callback method, including the requested information, if any, andstatus of the original request. In this way, the platform enables thelimited resources available on the browser to be allocated with theappropriate priority and rationing so as to allow for a smooth,seamless, and integrated user experience. Contrast this organizedplatform approach with a mashup of components—each unaware of the other,and each competing for the limited resources available to the browser(CPU, threads, number of concurrent request to the back-end systemsavailable, etc.), degrading performance in unpredictable and undesirableways.

FIGS. 3a, 3b, 3c, and 3d show an embodiment of console wrapperdefinitions which may be used to create and modify a component such asTwitter™ component 300 of FIG. 3e which may then be presented in aconsole such as console 100 of FIG. 1. Components designed to interactwith this open platform can meet a nearly unlimited range of applicationneeds, but may share a set of common characteristics by design.

FIG. 3a shows a potential configuration interface 310 for configurationof a component using a component container. Components may beself-configuring with interfaces such as interface 310 shown in FIG. 3ato allow both initial and subsequent modification of the use of thatcommunications component by the creator of the component, a presenter ofa presentation or virtual show, by an audience member that may beviewing the component in a console such as console 100 of FIG. 1. Eachcomponent may include different configuration settings and interfacescreated to interface with the programming interface 220 of FIG. 2.

FIG. 3b shows a skin interface 320. Components may also be skinnablesuch that the communications components inherit the user-interfacestyles from the parent applications or overall console skin setting tocreate a unified presentation, and allow overriding them on acase-by-case basis, as needed as shown by the style settings of skininterface 320.

FIG. 3c shows language setting interface 330. Communications componentsmay be designed to support multiple languages, and may interface withthe programming interface 220 as part of a component shell to allowadding of new languages at any time to the component.

FIG. 3d shows a preview window 340 as part of the configuration shellfor reviewing an interface for a communication component to be includedin a console 100. The preview window may allow review and modificationof any graphics, animations, or other visible or changing element of acommunication console as part of the component shell.

FIG. 3e shows a communication component 300 for presentation andaggregation within a communication console 100. As described above, thecommunication component is designed to be as flexible and open ended aspossible while operating through programming interface 220 so that eachcommunication components may be device agnostic. This functions withprogramming interface 220 such that such that the communicationcomponent is designed to work on any device, computer, mobile phone,PDA, Media Player, that supports the basic platform (HTML5, AdobeFlash™, Microsoft Silverlight™, and etcetera) for Rich internetapplications. As shown by Twitter™ component 300 of FIG. 3e , acomponent may include custom graphics, a login to an external service,and communications to and from an external service as part of thecomponent within communications console 100. Social networkingcommunications components may include the ability to interact in aself-contained way with other users without going to a different website, loading another page, or leaving a communication console such ascommunication console 100 in any way. User networking, linking, andchat, such as through Twitter™, Facebook™, or a number of other platformintegrations can be accomplished via these sorts of communicationscomponents.

FIG. 4 shows communication console system 400 for presentingcommunication components as part of a communication console to anaudience 440. Back end hardware components may include database hardware420, which, in one example, may be Sun Fire T2000™ Clusters operatingOracle DB Cluster 10.x™. Back end hardware components may additionallyinclude streaming hardware 410 such as HP™ bladeserver encoder andmedia/streaming servers. The back end hardware components 410 and 420may be coupled to presenter hardware 432 and audience hardware 434 vianetworking hardware 430. The back end comprises a data store which maybe stored on computers that house a database, or XML files to representthe data, and a middleware used by the application layer to save,retrieve and interact with this data. In the case of a live presentationor virtual show, presenters 450 and audience 440 may be connected toback end hardware at the same time to create a live presentation.Alternatively, for a recorded presentation, show, or other use ofconsole 100, presenters may store communication modules and/or media ondatabase hardware 420 for later use by audience 440.

As discussed above, audience hardware 434 may include any device,computer, mobile phone, PDA, Media Player that supports a basic platform(HTML5, Adobe Flash™, Microsoft Silverlight™, and etcetera) for Richinternet applications.

In one potential embodiment of communication console system 400,database hardware may include a library of communication components foruse by presenters 450 with presenter hardware 432. Standard and thirdparty communications components may be included, from which they can bepicked and added to a webcast or virtual event. Once added, thesecommunications components bring with them the interfaces to configurethe properties needed by the communications component to function withinthe specified context.

FIG. 5 shows data system 500 which may include database hardware such asdatabase hardware 420 in one potential implementation. Data system 500includes a primary data center 520 and a secondary data center 510. Thefirst and second data centers may contain first databases (512 and 522respectively) and second databases (514 and 524 respectively), with thedata from each data center stored in first storage area networks (516and 526 respectively) and second storage area networks (518 and 528respectively). The data centers may be communicatively coupled by acommunication link 530.

FIG. 6 shows an alternate embodiment of a communication console systemin the form of communication console system 600. Communication consolesystem 600 may optionally be distributed such that the components aredivided into different locations such as first location 620, secondlocation 640, third location 660, and fourth location 680. Communicationconsole system 600 may include network paths 624 from internet serviceproviders to network infrastructure 626, and then to switchinfrastructure 630. Network traffic may be divided or routed between aprimary network path 622 and a secondary network path 614. The primarynetwork path 622 interfaces with hardware 634 at second location 640 viaswitch infrastructure 630 which uses load balancers 632 and 633. Thesecondary network path may be connected to switch infrastructure 630 viacommunication link 609. Link 609 may be coupled to switch infrastructure604 which uses load balancers 606 and 608 to allow network traffic toaccess hardware 610. Additionally a first secondary attachment 628 mayallow traffic into the system via switch infrastructure 630, and asecond secondary attachment may allow network traffic into the systemvia switch infrastructure 604. Finally, hardware 610 and hardware 634may communicate with service hardware 684 and signal hardware 664 by useof networking hardware 612, 636, 682, and 662, respectively, whichprovide communication links between first location 620, second location640, third location 660, and fourth location 680.

With regard to computing components and software embodying theinnovations herein, aspects of the innovations herein may be implementedand/or operated consistent with numerous general purpose or specialpurpose computing system environments or configurations. Variousexemplary computing systems, environments, and/or configurations thatmay be suitable for use with the innovations herein may include, but arenot limited to, personal computers, servers or server computing devicessuch as routing/connectivity components, hand-held or laptop devices,multiprocessor systems, microprocessor-based systems, set top boxes,smart phones, consumer electronic devices, network PCs, other existingcomputer platforms, distributed computing environments that include oneor more of the above systems or devices, etc.

The innovations herein may be described in the general context ofcomputer-executable instructions, such as program modules, beingexecuted by a computer, computing component, etc. In general, programmodules may include routines, programs, objects, components, datastructures, and such that perform particular tasks or implementparticular abstract data types. The innovations herein may also bepracticed in distributed computing environments where tasks areperformed by remote processing devices that are linked through acommunications network. In a distributed computing environment, programmodules may be located in both local and remote computer storage mediaincluding memory storage devices.

The above computing components and environments may also include one ormore type of computer readable media. Computer readable media can be anyavailable media that is resident on, associable with, or can be accessedby computing components or environments discussed above. By way ofexample, and not limitation, computer readable media may comprisecomputer storage media and communication media. Computer storage mediaincludes volatile and nonvolatile, removable and non-removable mediaimplemented in any method or technology for storage of information suchas computer readable instructions, data structures, program modules orother data. Computer storage media includes, but is not limited to, RAM,ROM, EEPROM, flash memory or other memory technology, CD-ROM, digitalversatile disks (DVD) or other optical storage, magnetic tape, magneticdisk storage or other magnetic storage devices, or any other mediumwhich can be used to store the desired information and can accessed.Communication media may comprise computer readable instructions, datastructures, program modules or other data embodying the functionalityherein. Further, communication media may include wired media such as awired network or direct-wired connection, and wireless media such asacoustic, radio frequency/RF, infrared and other wireless media.Combinations of the any of the above are also included within the scopeof computer readable media.

In the present description, the terms component, module, device, etc.may refer to any type of logical or functional process or blocks thatmay be implemented in a variety of ways. For example, the functions ofvarious blocks can be combined with one another into any other number ofmodules. Each module can be implemented as a software program stored ona tangible memory (e.g., random access memory, read only memory, CD-ROMmemory, hard disk drive) to be read by a central processing unit toimplement the functions of the innovations herein. Or, the modules cancomprise programming instructions transmitted to a general purposecomputer or to processing/graphics hardware via a transmission carrierwave. Also, the modules can be implemented as hardware logic circuitryimplementing the functions encompassed by the innovations herein.Finally, the modules can be implemented using special purposeinstructions such as single instruction multiple data (SIMD)instructions, field programmable logic arrays or any mix thereof whichprovides the desired level performance and cost.

As disclosed herein, implementations and features of the innovationsherein may be implemented through computer-hardware, software and/orfirmware. For example, the systems and methods disclosed herein may beembodied in various forms including, for example, a data processor, suchas a computer that also includes a database, digital electroniccircuitry, firmware, software, or in combinations of them. Further,while some of the disclosed implementations describe components such assoftware, systems and methods consistent with the innovations herein maybe implemented with any combination of hardware, software and/orfirmware. Moreover, the above-noted features and other aspects andprinciples of the innovations herein may be implemented in variousenvironments. Such environments and related applications may bespecially constructed for performing the various processes andoperations according to the innovations herein or they may include ageneral-purpose computer or computing platform selectively activated orreconfigured by code to provide the necessary functionality. Theprocesses disclosed herein are not inherently related to any particularcomputer, network, architecture, environment, or other apparatus, andmay be implemented by a suitable combination of hardware, software,and/or firmware. For example, various general-purpose machines may beused with programs written in accordance with teachings of theinnovations herein, or it may be more convenient to construct aspecialized apparatus or system to perform the required methods andtechniques.

Aspects of the method and system described herein, such as the logic,may be implemented as functionality programmed into any of a variety ofcircuitry, including programmable logic devices (“PLDs”), such as fieldprogrammable gate arrays (“FPGAs”), programmable array logic (“PAL”)devices, electrically programmable logic and memory devices and standardcell-based devices, as well as application specific integrated circuits.Some other possibilities for implementing aspects include: memorydevices, microcontrollers with memory (such as EEPROM), embeddedmicroprocessors, firmware, software, etc. Furthermore, aspects may beembodied in microprocessors having software-based circuit emulation,discrete logic (sequential and combinatorial), custom devices, fuzzy(neural) logic, quantum devices, and hybrids of any of the above devicetypes. The underlying device technologies may be provided in a varietyof component types, e.g., metal-oxide semiconductor field-effecttransistor (“MOSFET”) technologies like complementary metal-oxidesemiconductor (“CMOS”), bipolar technologies like emitter-coupled logic(“ECL”), polymer technologies (e.g., silicon-conjugated polymer andmetal-conjugated polymer-metal structures), mixed analog and digital,and so on.

It should also be noted that the various logic and/or functionsdisclosed herein may be enabled using any number of combinations ofhardware, firmware, and/or as data and/or instructions embodied invarious machine-readable or computer-readable media, in terms of theirbehavioral, register transfer, logic component, and/or othercharacteristics. Computer-readable media in which such formatted dataand/or instructions may be embodied include, but are not limited to,non-volatile storage media in various forms (e.g., optical, magnetic orsemiconductor storage media) and carrier waves that may be used totransfer such formatted data and/or instructions through wireless,optical, or wired signaling media or any combination thereof. Examplesof transfers of such formatted data and/or instructions by carrier wavesinclude, but are not limited to, transfers (uploads, downloads, e-mail,etc.) over the Internet and/or other computer networks via one or moredata transfer protocols (e.g., HTTP, FTP, SMTP, and so on).

Unless the context clearly requires otherwise, throughout thedescription and the claims, the words “comprise,” “comprising,” and thelike are to be construed in an inclusive sense as opposed to anexclusive or exhaustive sense; that is to say, in a sense of “including,but not limited to.” Words using the singular or plural number alsoinclude the plural or singular number respectively. Additionally, thewords “herein,” “hereunder,” “above,” “below,” and words of similarimport refer to this application as a whole and not to any particularportions of this application. When the word “or” is used in reference toa list of two or more items, that word covers all of the followinginterpretations of the word: any of the items in the list, all of theitems in the list and any combination of the items in the list.

Although certain exemplary implementations of the present innovationshave been specifically described herein, it will be apparent to thoseskilled in the art to which the innovations herein pertains thatvariations and modifications of the various implementations shown anddescribed herein may be made without departing from the spirit and scopeof innovations consistent with this disclosure. Accordingly, it isintended that the innovations be limited only to the extent required bythe appended claims and the applicable rules of law.

We claim:
 1. An audience computing device comprising: a processor; amemory; an application framework that receives a communication managerobject via a network connectivity device and executes the communicationmanager object within the application framework; and wherein theapplication framework executes at least two communications componentsand a presentation component within the application framework using thecommunication manager object that registers events from the at least twocommunications components and the presentation component, delivers databack to each component and each component exchanges data with thecommunication manager object within the application framework based on apriority of the event for each component during a presentation topresent the presentation to a user of the audience computing devicewithout downloading and installing an application, and the communicationmanager object manages interface and display of the presentation via theapplication framework.
 2. The audience computing device of claim 1wherein the communication manager object receives requests to access theprocessing device from the communication components and verifies thateach communication component has appropriate permission to access theprocessing device.
 3. The audience computing device of claim 2 whereinthe communication manager object receives requests to access the networkconnectivity device from at least one of the communication componentsand verifies that the at least one of the communication components hasappropriate permission to access the network connectivity device.
 4. Theaudience computing device of claim 1 wherein the audience computingdevice is a mobile telephone.
 5. The audience computing device of claim1 wherein the two communications components are received from the memorydevice.
 6. The audience computing device of claim 1 wherein the twocommunications components are received from the network interface. 7.The audience computing device of claim 3 wherein the communicationmanager object comprises a registration module that registers the atleast two communication components.
 8. The audience computing device ofclaim 1, wherein the presentation component further comprises one of adisplay background component and a screen background component.
 9. Asystem for providing an online presentation including a communicationsconsole with component aggregation comprising: a back end computingsystem comprising a database of communication components and acommunication manager object; and an audience computing devicecomprising a first application framework, wherein the back end computingdevices and the audience computing device are communicatively coupledvia a network, the audience computing device receives and executes thecommunication manager object within the first application framework thatregisters events from at least two communications components and apresentation component and delivers data back to each component togenerate an online presentation based on the priority of the event foreach component without downloading and installing an application. 10.The system of claim 9 further comprising a presenter computing devicecomprising presentation information, wherein the presenter computingdevice is communicatively coupled to the back end computing system andthe audience computing device, and wherein the communication managerobject manages receipt and display of the presentation informationthrough the first application framework on the audience computingdevice.
 11. The system of claim 9 further comprising a developercomputing device wherein the developer computing device iscommunicatively coupled to audience computing device, and transmits thedeveloper communication component to the audience computing device forstorage in a memory of to the audience computing device.
 12. The systemof claim 9, wherein the back end computing system further comprises adatabase of presentation components, wherein the presentation componentis executed in the first application framework to deliver the onlinepresentation.
 13. The system of claim 12, wherein the presentationcomponent further comprises one of a display background component and ascreen background component.
 14. A method for providing an onlinepresentation using a back end computing system comprising a database ofcommunication components and a communication manager object and anaudience computing device comprising a first application framework,wherein the back end computing devices and the audience computing deviceare communicatively coupled via a network, the method comprising:receiving, at an audience computing device, a communication managerobject; executing, at the audience computing device within the firstapplication framework, the communication manager object to generate anonline presentation without downloading and installing an application,the communication manager object registering events from at least twocommunications components and a presentation component and delivers databack to each component; receiving, at the audience computing device, atleast two communication components; executing, at the audience computingdevice within the first application framework using the communicationmanager object, the at least two communication components; andexchanging data between the communication manager object and the atleast two communication components based on a priority of the event foreach component during the online presentation.
 15. The method of claim14 further comprising receiving, at the audience computing device, apresentation component and executing, at the audience computing devicewithin the first application framework using the communication managerobject, the presentation component.
 16. The method of claim 15, whereinthe presentation component further comprises one of a display backgroundcomponent and a screen background component.